home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / machserver / include / RCS / fslcl.h,v < prev    next >
Encoding:
Text File  |  1992-07-17  |  3.1 KB  |  121 lines

  1. head     1.2;
  2. branch   ;
  3. access   ;
  4. symbols  srv030:1.2 srv027:1.2 srv026:1.2 srv024:1.2 srv021:1.2 srv019:1.2 srv018:1.2 srv016:1.2 srv014:1.2 srv010:1.2 srv008:1.2 srv007:1.2 srv006:1.2 srv005:1.2 srv004:1.2 srv003:1.2 srv002:1.2 srv001:1.2;
  5. locks    ; strict;
  6. comment  @ * @;
  7.  
  8.  
  9. 1.2
  10. date     91.11.19.17.04.41;  author kupfer;  state Exp;
  11. branches ;
  12. next     1.1;
  13.  
  14. 1.1
  15. date     91.11.15.16.11.47;  author kupfer;  state Exp;
  16. branches ;
  17. next     ;
  18.  
  19.  
  20. desc
  21. @@
  22.  
  23.  
  24. 1.2
  25. log
  26. @First cut at sprited support.
  27. @
  28. text
  29. @/*
  30.  * fslcl.h --
  31.  *
  32.  *    Definitions of the parameters required for Local Domain operations.
  33.  *
  34.  * Copyright 1990 Regents of the University of California
  35.  * Permission to use, copy, modify, and distribute this
  36.  * software and its documentation for any purpose and without
  37.  * fee is hereby granted, provided that the above copyright
  38.  * notice appear in all copies.  The University of California
  39.  * makes no representations about the suitability of this
  40.  * software for any purpose.  It is provided "as is" without
  41.  * express or implied warranty.
  42.  *
  43.  * $Header: /r3/kupfer/spriteserver/src/sprited/fslcl/RCS/fslcl.h,v 1.1 91/11/15 16:11:47 kupfer Exp Locker: kupfer $ SPRITE (Berkeley)
  44.  */
  45.  
  46. #ifndef _FSLCL
  47. #define _FSLCL
  48.  
  49. #if defined(KERNEL) || defined(SPRITED)
  50. #include <fscache.h>
  51. #include <fsio.h>
  52. #include <fsconsist.h>
  53. #include <fsioFile.h>
  54. #else
  55. #include <fs.h>
  56. #endif
  57.  
  58. /*
  59.  * A directory entry:  Note that this is compatible with 4.3BSD 'struct direct'
  60.  */
  61. typedef struct Fslcl_DirEntry {
  62.     int fileNumber;        /* Index of the file descriptor for the file. */
  63.     short recordLength;        /* How many bytes this directory entry is */
  64.     short nameLength;        /* The length of the name in bytes */
  65.     char fileName[FS_MAX_NAME_LENGTH+1];    /* The name itself */
  66. } Fslcl_DirEntry;
  67. /*
  68.  *    FSLCL_DIR_BLOCK_SIZE    Directory's grow in multiples of this constant,
  69.  *        and records within a directory don't cross directory blocks.
  70.  *    FSLCL_DIR_ENTRY_HEADER    The size of the header of a FslclDirEntry;
  71.  *    FSLCL_REC_LEN_GRAIN    The number of bytes in a directory record
  72.  *                are rounded up to a multiple of this constant.
  73.  */
  74. #define FSLCL_DIR_BLOCK_SIZE    512
  75. #define FSLCL_DIR_ENTRY_HEADER    (sizeof(int) + 2 * sizeof(short))
  76. #define FSLCL_REC_LEN_GRAIN    4
  77.  
  78. /*
  79.  * Fslcl_DirRecLength --
  80.  *    This computes the number of bytes needed for a directory entry.
  81.  *    The argument should be the return of the String_Length function,
  82.  *    ie, not include the terminating null in the count.
  83.  */
  84. #define Fslcl_DirRecLength(stringLength) \
  85.     (FSLCL_DIR_ENTRY_HEADER + \
  86.     ((stringLength / FSLCL_REC_LEN_GRAIN) + 1) * FSLCL_REC_LEN_GRAIN)
  87.  
  88. #if defined(KERNEL) || defined(SPRITED)
  89. /*
  90.  * Misc. routines.
  91.  */
  92. extern void Fslcl_DomainInit _ARGS_((void));
  93. extern ReturnStatus Fslcl_DeleteFileDesc _ARGS_((Fsio_FileIOHandle *handlePtr));
  94. extern void Fslcl_NameInitializeOps _ARGS_((void));
  95. extern void Fslcl_NameHashInit _ARGS_((void));
  96.  
  97. #endif /* KERNEL || SPRITED */
  98.  
  99. #endif /* _FSLCL */
  100. @
  101.  
  102.  
  103. 1.1
  104. log
  105. @Initial revision
  106. @
  107. text
  108. @d15 1
  109. a15 1
  110.  * $Header: /sprite/src/kernel/fslcl/RCS/fslcl.h,v 9.5 90/10/19 15:46:15 mendel Exp $ SPRITE (Berkeley)
  111. d21 1
  112. a21 1
  113. #ifdef KERNEL
  114. d60 1
  115. a60 1
  116. #ifdef KERNEL
  117. d69 1
  118. a69 1
  119. #endif /* KERNEL */
  120. @
  121.